package com.deer.wms.base.system.model.bill;

import com.deer.wms.common.annotation.Excel;
import lombok.Data;

import javax.persistence.Column;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Transient;

@Data
@Table(name = "bill_in_material_detail")//bill_in_material_detail
public class MaterialDetail {
    //缓存线
    @Id
    private Integer id;//编码
    @Column(name = "carrierId")
    @Excel(name="托号")
    private String carrierId;//托号
    @Transient
    private String materialBatchId;//pici
    @Excel(name="单晶编码")
    @Column(name = "materialId")
    private String materialId;//单晶编码
    @Excel(name="单晶规格")
    @Column(name = "specId")
    private String specId;//单晶规格
    @Excel(name="单晶等级")
    @Column(name = "materialCategory")
    private String materialCategory;//单晶等级
    @Column(name = "materialPN")
    private String materialPN;//单晶PN型
    @Column(name = "rareMetal")
    private String rareMetal;//掺杂剂
    private String resistance;//电阻率
    @Excel(name="单晶长度")
    @Column(name = "brickLength")
    private Integer	brickLength;//单晶长度
    @Column(name = "stockInLength")
    private Integer stockInLength;//入库单晶长度
    private float  weight;//入库重量
    @Column(name = "assemblyType")
    private Integer assemblyType;//拼棒类型

    private float diameter;//直径
    @Column(name = "sideLength")

    private float sideLength;//边长

    private String comment;//备注
    private String color;//颜色
    private Integer pid;
    private Integer state;
    @Transient
    private String startTime;
    @Column(name = "opTime")
    private String opTime;//颜色
    @Transient
    private String endTime;
    @Column(name = "parentMaterialId")
    private String parentMaterialId;//单晶ID
    @Excel(name="物料编码")
    @Column(name = "materialProduct")
    private String materialProduct;//物料编码
    @Excel(name="物料品质")
    @Column(name = "materialQuality")
    private String materialQuality;//物料品质
    @Transient
    private Integer result;



    public MaterialDetail(){}
    public MaterialDetail(String materialBatchId, String carrierId, String parentMaterialId, String materialProduct, String materialQuality, String materialId, String specId) {
        this.materialBatchId = materialBatchId;
        this.materialId = materialId;
        this.specId = specId;
    }

    public MaterialDetail(String materialBatchId, String materialId, String specId, String materialCategory, String materialPN, String rareMetal, String resistance, Integer brickLength, Integer stockInLength, float weight, Integer assemblyType, float diameter, float sideLength, String comment, String color, Integer pid, Integer state, String startTime, String opTime, String endTime) {
        this.materialBatchId = materialBatchId;
        this.materialId = materialId;
        this.specId = specId;
        this.materialCategory = materialCategory;
        this.materialPN = materialPN;
        this.rareMetal = rareMetal;
        this.resistance = resistance;
        this.brickLength = brickLength;
        this.stockInLength = stockInLength;
        this.weight = weight;
        this.assemblyType = assemblyType;
        this.diameter = diameter;
        this.sideLength = sideLength;
        this.comment = comment;
        this.color = color;
        this.pid = pid;
        this.state = state;
        this.startTime = startTime;
        this.opTime = opTime;
        this.endTime = endTime;
    }
}
